Precise Visual Specification of Design Patterns
نویسندگان
چکیده
There has been substantial recent interest in captured design expertise expressed as design patterns. Prevalent descriptions of these design patterns suffer from two demerits. Firstly, they capture specific instances of pattern deployment, rather than the essential pattern itself, thus the spirit of the pattern is often lost in the superfluous details of the specific instances described. Secondly, existing pattern descriptions rely upon relatively informal diagrammatic notations supplemented with natural language annotations. This can result in imprecision and ambiguity. This paper addresses these problems by separating the specification of patterns into three models (role, type, and class). The most abstract (role-centric) model presents patterns in their purest form, capturing their essential spirit without deleterious detail. A role-model is refined by a type-model (adding usuallydomain-specific constraints), which is further refined by a class-model (forming a concrete deployment). We utilise recent advances in visual modelling notation to achieve greater precision without resorting to obtuse mathematical symbols. A set-oriented view of state, operations, and instances is adopted, permitting their abstract presentation in models via this visual notation. This paper utilises these ideas in the unambiguous specification of a selection of prominent design patterns. The expectation is that precise visual pattern specification will firstly enable clear communication between domain experts and pattern writers (and ultimately pattern users), and secondly enable CASE tool support for design patterns, permitting the designer (pattern user) to operate at a higher level of abstraction without ambiguity.
منابع مشابه
Precise Notation for Design Patterns
LePUS is a formal, visual notation proposed for the specification of design patterns a-la GoF. It is described through the diagrams of several patterns. This article is the 1 of two, focusing on the fundamentals of LePUS. The upcoming 2 article will discuss relations between sets of entities and a PROLOG implementation. The Need for a Notation for Design Patterns Is it possible at all to give a...
متن کاملروش بهکارگیری نقوش قالی در طراحی گرافیک
As patterns of other Iranian handicrafts, carpet patterns are valuable and extensively rich sources of visual elements to be used in today’s graphical works whenever appropriate. Due to the fact that these patterns have paved a long way through the history of carpet-weaving, they have been evolved into distilled and beautiful patterns of precise and orderly design structures. It is a cult...
متن کاملPrecise Specification and Automatic Application of Design Patterns
Despite vast interest in design patterns, the specification and application of patterns is generally assumed to rely on manual implementation. We describe a precise method of specifying how a design pattern is applied: by phrasing it as an algorithm in a meta-programming language. We present a prototype of a tool that supports the specification of design patterns and their realization in a give...
متن کاملLePUS - A Declarative Pattern Specification Language
At present, the only means used for specifying design patterns are contemporary object notations [Rumbaugh et. al 91; Booch 94], lengthy verbal descriptions, and sample programs. The inherent ambiguity and incompleteness of these means preclude devising tool support and fuel disputes over “their true intention”. We identified a compact set of abstractions with simple graphical representation, w...
متن کاملReasoning About Design Patterns: A Case Study
Design patterns are valuable both for designing and for documenting software systems. Patterns are usually described informally. While informal descriptions are very useful, in order to be sure that designers have a precise understanding of the requirements that must be met when applying a given pattern, and to be able to reliably predict the behaviors that systems built using specific patterns...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1998